package com.sz.biz.logistics.bill.entity;

import com.sz.common.base.entity.VersionEntity;
import com.sz.common.base.entity.VersionEntityBase;

import java.util.Date;

/**
 * Function: 账单任务 <br>
 * Author: jifeixing <br>
 * Date: 2017-05-16 14:22:00
 */
public class BillingTask extends VersionEntityBase implements VersionEntity {

    private Integer id;
    /**
     * 任务编码
     */
    private String taskCode;
    /**
     * 账单类型
     */
    private String type;
    /**
     * 客户名称
     */
    private String customerId;
    /**
     * 账单开始时间
     */
    private Date startEffectTime;

    /**
     * 账单结束时间
     */
    private Date endEffectTime;
    /**
     * 账单中客户数量
     */
    private Integer customerQuantity;
    /**
     * 已完成客户数量
     */
    private Integer completeCustomerQuantity;
    /**
     * 跳过已生成账单客户数量
     */
    private Integer skippedCustomerQuantity;
    /**
     * 跳过已生成账单客户列表
     */
    private String skippedCustomerList;
    /**
     * 账单中的订单总数量
     */
    private Integer orderQuantity;
    /**
     * 已完成订单数量
     */
    private Integer completeOrderQuantity;
    /**
     * 跳过已生成账单的订单数量
     */
    private Integer skippedOrderQuantity;
    /**
     * 任务开始时间
     */
    private Date taskStartTime;
    /**
     * 任务结束时间
     */
    private Date taskEndTime;
    /**
     * 账单任务状态
     */
    private BillingTaskStatus taskStatus;
    /**
     * 是否已经重新生成
     */
    private Boolean isRegenerate;
    /**
     * 重试次数
     */
    private Integer regenerateTimes;

    @Override
    public Integer getId() {
        return id;
    }

    @Override
    public void setId(Integer id) {
        this.id = id;
    }

    public String getTaskCode() {
        return taskCode;
    }

    public void setTaskCode(String taskCode) {
        this.taskCode = taskCode;
    }

    public Date getStartEffectTime() {
        return startEffectTime;
    }

    public void setStartEffectTime(Date startEffectTime) {
        this.startEffectTime = startEffectTime;
    }

    public Date getEndEffectTime() {
        return endEffectTime;
    }

    public void setEndEffectTime(Date endEffectTime) {
        this.endEffectTime = endEffectTime;
    }

    public Integer getOrderQuantity() {
        return orderQuantity;
    }

    public void setOrderQuantity(Integer orderQuantity) {
        this.orderQuantity = orderQuantity;
    }

    public Integer getCompleteOrderQuantity() {
        return completeOrderQuantity;
    }

    public void setCompleteOrderQuantity(Integer completeOrderQuantity) {
        this.completeOrderQuantity = completeOrderQuantity;
    }

    public Date getTaskStartTime() {
        return taskStartTime;
    }

    public void setTaskStartTime(Date taskStartTime) {
        this.taskStartTime = taskStartTime;
    }

    public Date getTaskEndTime() {
        return taskEndTime;
    }

    public void setTaskEndTime(Date taskEndTime) {
        this.taskEndTime = taskEndTime;
    }

    public BillingTaskStatus getTaskStatus() {
        return taskStatus;
    }

    public void setTaskStatus(BillingTaskStatus taskStatus) {
        this.taskStatus = taskStatus;
    }

    public Boolean getIsRegenerate() {
        return isRegenerate;
    }

    public void setIsRegenerate(Boolean regenerate) {
        isRegenerate = regenerate;
    }

    public Integer getRegenerateTimes() {
        return regenerateTimes;
    }

    public void setRegenerateTimes(Integer regenerateTimes) {
        this.regenerateTimes = regenerateTimes;
    }

    public Integer getCustomerQuantity() {
        return customerQuantity;
    }

    public void setCustomerQuantity(Integer customerQuantity) {
        this.customerQuantity = customerQuantity;
    }

    public Integer getCompleteCustomerQuantity() {
        return completeCustomerQuantity;
    }

    public void setCompleteCustomerQuantity(Integer completeCustomerQuantity) {
        this.completeCustomerQuantity = completeCustomerQuantity;
    }

    public String getCustomerId() {
        return customerId;
    }

    public void setCustomerId(String customerId) {
        this.customerId = customerId;
    }

    public Integer getSkippedCustomerQuantity() {
        return skippedCustomerQuantity;
    }

    public void setSkippedCustomerQuantity(Integer skippedCustomerQuantity) {
        this.skippedCustomerQuantity = skippedCustomerQuantity;
    }

    public Integer getSkippedOrderQuantity() {
        return skippedOrderQuantity;
    }

    public void setSkippedOrderQuantity(Integer skippedOrderQuantity) {
        this.skippedOrderQuantity = skippedOrderQuantity;
    }

    public String getSkippedCustomerList() {
        return skippedCustomerList;
    }

    public void setSkippedCustomerList(String skippedCustomerList) {
        this.skippedCustomerList = skippedCustomerList;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }
}